Skip to content

{bio}[foss/2025b] GROMACS v2025.4#24956

Open
bedroge wants to merge 2 commits intoeasybuilders:developfrom
bedroge:20251222133948_new_pr_GROMACS20254
Open

{bio}[foss/2025b] GROMACS v2025.4#24956
bedroge wants to merge 2 commits intoeasybuilders:developfrom
bedroge:20251222133948_new_pr_GROMACS20254

Conversation

@bedroge
Copy link
Copy Markdown
Contributor

@bedroge bedroge commented Dec 22, 2025

(created using eb --new-pr)

Note: dropped GROMACS-2025.2_workaround-arm-sve512.patch, as that fix is included in 2025.4, see https://gitlab.com/gromacs/gromacs/-/merge_requests/5593.

@bedroge bedroge added the update label Dec 22, 2025
@github-actions github-actions Bot added the 2025b issues & PRs related to 2025b common toolchains label Dec 22, 2025
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Dec 22, 2025

Updated software GROMACS-2025.4-foss-2025b.eb

Diff against GROMACS-2024.4-foss-2024a.eb

easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2024a.eb

diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2024a.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
index 7e6bd8a4cc..5ce8346928 100644
--- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2024.4-foss-2024a.eb
+++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
@@ -15,7 +15,7 @@
 # License::   MIT/GPL
 
 name = 'GROMACS'
-version = '2024.4'
+version = '2025.4'
 
 homepage = 'https://www.gromacs.org'
 description = """
@@ -29,7 +29,7 @@ for both single and double precision.
 It also contains the gmxapi extension for the single precision MPI build.
 """
 
-toolchain = {'name': 'foss', 'version': '2024a'}
+toolchain = {'name': 'foss', 'version': '2025b'}
 toolchainopts = {'openmp': True, 'usempi': True}
 
 source_urls = [
@@ -40,28 +40,26 @@ sources = [SOURCELOWER_TAR_GZ]
 patches = [
     'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch',
     'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch',
-    'GROMACS-2024.1_workaround-arm-sve512.patch',
 ]
 checksums = [
-    {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'},
+    {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
     {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch':
      '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'},
     {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch':
      '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'},
-    {'GROMACS-2024.1_workaround-arm-sve512.patch': '0dfa82a9425322d2b2c250d698ac2065f8c0ce0143df0057e7ec21686d60e5f7'},
 ]
 
 builddependencies = [
-    ('CMake', '3.29.3'),
-    ('scikit-build-core', '0.11.1'),
+    ('CMake', '4.0.3'),
+    ('scikit-build-core', '0.11.5'),
+    ('pybind11', '3.0.0'),
 ]
 
 dependencies = [
-    ('Python', '3.12.3'),
-    ('SciPy-bundle', '2024.05'),
-    ('networkx', '3.4.2'),
-    ('mpi4py', '4.0.1'),
-    ('pybind11', '2.12.0'),
+    ('Python', '3.13.5'),
+    ('SciPy-bundle', '2025.07'),
+    ('networkx', '3.5'),
+    ('mpi4py', '4.1.0'),
 ]
 
 # be a bit more forgiving w.r.t. timeouts for GROMACS test suite,
@@ -80,7 +78,7 @@ exts_list = [
         'source_tmpl': 'gromacs-%s.tar.gz' % _gmxapi_source_version,
         'start_dir': 'python_packaging/gmxapi',
         'checksums': [
-            {'gromacs-2024.4.tar.gz': 'ac618ece2e58afa86b536c5a2c4fcb937f0760318f12d18f10346b6bdebd86a8'},
+            {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
             {'GROMACS-2024.1-fix-gmxapi-version.patch':
                 'df30b21352a26d8e01d693e2822db0ea45015c23f900a6ceb68522d44e6e790c'},
         ],
Diff against GROMACS-2021.0-foss-2023a-20250409-constant-pH-CUDA-12.1.1-PLUMED.eb

easybuild/easyconfigs/g/GROMACS/GROMACS-2021.0-foss-2023a-20250409-constant-pH-CUDA-12.1.1-PLUMED.eb

diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.0-foss-2023a-20250409-constant-pH-CUDA-12.1.1-PLUMED.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
index 6f868a8215..5ce8346928 100644
--- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.0-foss-2023a-20250409-constant-pH-CUDA-12.1.1-PLUMED.eb
+++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
@@ -1,60 +1,88 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC,
+#                                 Ghent University / The Francis Crick Institute
+# Authors::
+# * Wiktor Jurkowski <wiktor.jurkowski@gmail.com>
+# * Fotis Georgatos <fotis@cern.ch>
+# * George Tsouloupas <g.tsouloupas@cyi.ac.cy>
+# * Kenneth Hoste <kenneth.hoste@ugent.be>
+# * Adam Huffman <adam.huffman@crick.ac.uk>
+# * Ake Sandgren <ake.sandgren@hpc2n.umu.se>
+# * J. Sassmannshausen <Crick HPC team>
+# * Dugan Witherick <dugan.witherick@warwick.ac.uk>
+# * Christoph Siegert <christoph.siegert@uni-leipzig.de>
+# License::   MIT/GPL
+
 name = 'GROMACS'
-version = '2021.0'
-_date = '-20250409'
-local_commit = '28807b11'
-_cuda_suffix = '-CUDA-%(cudaver)s'
-versionsuffix = f'{_date}-constant-pH{_cuda_suffix}-PLUMED'
-# fork is from v2021.0-beta1, SOVERSION = 6.0.0
-
-homepage = 'https://gitlab.com/gromacs-constantph'
-description = """
-GROMACS constant pH
+version = '2025.4'
 
+homepage = 'https://www.gromacs.org'
+description = """
 GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the
 Newtonian equations of motion for systems with hundreds to millions of
 particles.
 
-This is preliminary version of the GROMACS constant pH code.
-The modified force fields needed for constnat pH.
+This is a CPU only build, containing both MPI and threadMPI binaries
+for both single and double precision.
+
+It also contains the gmxapi extension for the single precision MPI build.
 """
 
-toolchain = {'name': 'foss', 'version': '2023a'}
-# Currently, separate PME ranks are not supported with MPI
-toolchainopts = {'openmp': True, 'usempi': False}
+toolchain = {'name': 'foss', 'version': '2025b'}
+toolchainopts = {'openmp': True, 'usempi': True}
 
-source_urls = ['https://gitlab.com/gromacs-constantph/constantph/-/archive/']
-sources = [{
-    'download_filename': '%s.tar.gz' % local_commit,
-    'filename': '%%(name)s-%%(version)s-%s.tar.gz' % local_commit,
-}]
+source_urls = [
+    'https://ftp.gromacs.org/pub/gromacs/',
+    'ftp://ftp.gromacs.org/pub/gromacs/',
+]
+sources = [SOURCELOWER_TAR_GZ]
 patches = [
-    'GROMACS-2021.0-20250409-constant-pH_enable-CUDA-12.1.1.patch',
+    'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch',
+    'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch',
 ]
 checksums = [
-    {'GROMACS-2021.0-28807b11.tar.gz': '88548354e02c872052f2fa662eab5f111421706cb0ea264e94af19e7274d0f78'},
-    {'GROMACS-2021.0-20250409-constant-pH_enable-CUDA-12.1.1.patch':
-     'f1bf5026b92aea6e6ca1265d75aa42976cfa9cf480e6ee5168e935d4380aab3e'},
+    {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
+    {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch':
+     '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'},
+    {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch':
+     '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'},
 ]
 
 builddependencies = [
-    ('CMake', '3.26.3'),
-    ('Doxygen', '1.9.7'),
+    ('CMake', '4.0.3'),
+    ('scikit-build-core', '0.11.5'),
+    ('pybind11', '3.0.0'),
 ]
+
 dependencies = [
-    ('CUDA', '12.1.1', '', SYSTEM),
-    ('PLUMED', '2.9.0'),
+    ('Python', '3.13.5'),
+    ('SciPy-bundle', '2025.07'),
+    ('networkx', '3.5'),
+    ('mpi4py', '4.1.0'),
 ]
 
-start_dir = 'gromacs-constantph'
+# be a bit more forgiving w.r.t. timeouts for GROMACS test suite,
+# see also https://gitlab.com/gromacs/gromacs/-/issues/5062
+configopts = "-DGMX_TEST_TIMEOUT_FACTOR=3"
 
-plumed = 'patch'
-ignore_plumed_version_check = True
+exts_defaultclass = 'PythonPackage'
 
-# Disable installing the Python gmxapi bindings - python 3.11 not supported
-python_pkg = False
+_gmxapi_source_version = version
 
-# Code is not sufficiently covered with tests and some standard GROMACS test might be broken.
-# Thus, make check might end up with errors
-runtest = False
+exts_list = [
+    ('gmxapi', '0.5.0a1', {
+        'patches': ['GROMACS-2024.1-fix-gmxapi-version.patch'],
+        'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' +
+                          '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ',
+        'source_tmpl': 'gromacs-%s.tar.gz' % _gmxapi_source_version,
+        'start_dir': 'python_packaging/gmxapi',
+        'checksums': [
+            {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
+            {'GROMACS-2024.1-fix-gmxapi-version.patch':
+                'df30b21352a26d8e01d693e2822db0ea45015c23f900a6ceb68522d44e6e790c'},
+        ],
+    }),
+]
 
 moduleclass = 'bio'
Diff against GROMACS-2025.2-lmpflf-2025b.eb

easybuild/easyconfigs/g/GROMACS/GROMACS-2025.2-lmpflf-2025b.eb

diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.2-lmpflf-2025b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
index 2d358f5be2..5ce8346928 100644
--- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.2-lmpflf-2025b.eb
+++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2025.4-foss-2025b.eb
@@ -15,7 +15,7 @@
 # License::   MIT/GPL
 
 name = 'GROMACS'
-version = '2025.2'
+version = '2025.4'
 
 homepage = 'https://www.gromacs.org'
 description = """
@@ -29,7 +29,7 @@ for both single and double precision.
 It also contains the gmxapi extension for the single precision MPI build.
 """
 
-toolchain = {'name': 'lmpflf', 'version': '2025b'}
+toolchain = {'name': 'foss', 'version': '2025b'}
 toolchainopts = {'openmp': True, 'usempi': True}
 
 source_urls = [
@@ -40,18 +40,13 @@ sources = [SOURCELOWER_TAR_GZ]
 patches = [
     'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch',
     'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch',
-    'GROMACS-2025.2_workaround-arm-sve512.patch',
-    'GROMACS-2025.2_fix-sample_restraint-mpich-launch.patch',
 ]
 checksums = [
-    {'gromacs-2025.2.tar.gz': '0df09f9d45a99ef00e66b9baa9493a27e906813763a3b6c7672217c66b43ea11'},
+    {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
     {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch':
      '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'},
     {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch':
      '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'},
-    {'GROMACS-2025.2_workaround-arm-sve512.patch': 'e62e075ee9328f647954365edd7979ea79e6f1d7a3b84834a2aae546cf74772c'},
-    {'GROMACS-2025.2_fix-sample_restraint-mpich-launch.patch':
-     'a910ec50cf296a6bdf8e5d425617d54c13b4ef049b61196487d7dc8a8f674e2c'},
 ]
 
 builddependencies = [
@@ -83,7 +78,7 @@ exts_list = [
         'source_tmpl': 'gromacs-%s.tar.gz' % _gmxapi_source_version,
         'start_dir': 'python_packaging/gmxapi',
         'checksums': [
-            {'gromacs-2025.2.tar.gz': '0df09f9d45a99ef00e66b9baa9493a27e906813763a3b6c7672217c66b43ea11'},
+            {'gromacs-2025.4.tar.gz': 'ca17720b4a260eb73649211e9f6a940ee7543452129844213c3accb0a927a5c3'},
             {'GROMACS-2024.1-fix-gmxapi-version.patch':
                 'df30b21352a26d8e01d693e2822db0ea45015c23f900a6ceb68522d44e6e790c'},
         ],

@bedroge
Copy link
Copy Markdown
Contributor Author

bedroge commented Dec 22, 2025

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@bedroge: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=24956 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24956 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 9277

Test results coming soon (I hope)...

Details

- notification for comment with ID 3681949374 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (total: 51 mins 14 secs) (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.7, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.23
See https://gist.github.com/boegelbot/82a885f9f2ed35152be5bc490d4fb3d0 for a full test report.

@bedroge
Copy link
Copy Markdown
Contributor Author

bedroge commented Dec 22, 2025

Test report by @bedroge
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
bob-Latitude-5300 - Linux Ubuntu 25.04 (Plucky Puffin), x86_64, Intel(R) Core(TM) i7-8665U CPU @ 1.90GHz, Python 3.13.3
See https://gist.github.com/bedroge/7729bbb14689a9cbd7a4df448c7dc3fe for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator

Thyre commented Jan 7, 2026

Test report by @Thyre
FAILED
Build succeeded for 0 out of 1 (total: 39 mins 6 secs) (1 easyconfigs in total)
jrc0901.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.95.05, Python 3.9.21
See https://gist.github.com/Thyre/b9d4510c21c160f1271171577079b0c4 for a full test report.

@bedroge
Copy link
Copy Markdown
Contributor Author

bedroge commented Apr 22, 2026

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@bedroge: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=24956 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24956 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 10265

Test results coming soon (I hope)...

Details

- notification for comment with ID 4295971620 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (total: 51 mins 5 secs) (1 easyconfigs in total)
jsczen3c2.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.7, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.25
See https://gist.github.com/boegelbot/607b36f54b169ac50ccae0933c49c138 for a full test report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2025b issues & PRs related to 2025b common toolchains update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants